<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <!--<meta http-equiv="Cache-Control" content="no-cache" />-->
    <!--<meta http-equiv="Pragma" content="no-cache" />-->
    <!--<meta http-equiv="Expires" content="0" />-->
    <title>相关算法入门</title>
    <link rel="stylesheet" href="index.css">
</head>

<body>
<div class="boxes"></div>
<div class="boxes1"></div>
<script type="text/javascript">
    /**
     * 关于缓存机制的测试
     * 说明：缓存机制是根据资源的URL来判断
     * 彻底解决浏览器缓存问题，将所有静态资源新增版本号，例如以下js新增时间戳来控制每次的刷新，都会更新最新的js
     * 更新图片, 如果图片的url没有改变, 刷新页面之后图片会使用缓存的图片
     * 原理：
     * 网页本身如果有修改，默认肯定是加载最新的，不会调用缓存，至于引用的静态文件，如果有更新，可以在末尾加版本参数的方式强制刷新。
     *  document.write("<link rel='stylesheet' type='text/css' href='index.css?v="+version+"'/>");
        document.write("<script type='text/javascript' src='suanfa.js?v="+version+"'><"+'/'+"script>");
     *
     *
     * 浏览器支持较好 可用meta方法 ,meta 方法不会针对于静态资源不缓存
     * <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /> 注：请求消息或响应消息时 指定请求和响应遵循的缓存机制
       <meta http-equiv="Pragma" content="no-cache" />
       <meta http-equiv="Expires" content="0" />
     *
     * Cache-Control头域

     Cache-Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置Cache-Control并不会修改另一个消息处理过程中的缓存处理过程。请求时的缓存指令包括no-cache、no-store、max-age、max-stale、min-fresh、only-if-cached，响应消息中的指令包括public、private、no-cache、no-store、no-transform、must-revalidate、proxy-revalidate、max-age。各个消息中的指令含义如下
     Public指示响应可被任何缓存区缓存
     Private指示对于单个用户的整个或部分响应消息，不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息，此响应消息对于其他用户的请求无效
     no-cache指示请求或响应消息不能缓存
     no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。
     max-age指示客户机可以接收生存期不大于指定时间（以秒为单位）的响应
     min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应
     max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值，那么客户机可以接收超出超时期指定值之内的响应消息。

     <meta http-equiv="pragma" content="no-cache">
     pragma与no-cache用于定义页面缓存,不缓存页面(为了提高速度一些浏览器会缓存浏览者浏览过的页面,通过下面的定义,浏览器一般不会缓存页面,而且浏览器无法脱机浏览.)


     <meta http-equiv="expires" content="0">

     指定Expires值为一个早已过去的时间，那么访问此网时若重复在地址栏按回车，那么每次都会重复访问： Expires: Fri, 31 Dec 1999 16:00:00 GMT 比如：禁止页面在IE中缓存 http响应消息头部设置： CacheControl = no-cache Pragma=no-cache Expires = -1 Expires是个好东东，如果服务器上的网页经常变化，就把它设置为0，表示立即过期。

     *
     * 如果调试时不想设置版本号，windos用户可以使用ctrl+F5进行强制刷新
     */

    let version=(new Date()).getTime();
    document.write("<link rel='stylesheet' type='text/css' href='index.css?v="+version+"'/>");
    document.write("<script type='text/javascript' src='suanfa.js?v="+version+"'><"+'/'+"script>");
    window.onload=()=>{

        console.log("加载完成");
        let suanfa=new suanFa();
        suanfa.init();

    }








</script>

</body>
</html>
